package cn.fresh.xuanyuan.module.product.vo.plate;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.List;

/**
 * 微信端商品属性
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder(toBuilder = true)
public class WxProductVo {

    private Long id;

    @Schema(description = "果园ID", example = "1")
    private Integer orchardId;

    @Schema(description = "果园名称", example = "芒果园")
    private String orchardName;

    @Schema(description = "果园头像", example = "http://image.test.cn/images/dfdfdfdfgfgfg.png")
    private String avatar;

    @Schema(description = "果园所在省份", example = "广西")
    private String province;

    @Schema(description = "果园所在市",  example = "百色")
    private String city;

    @Schema(description = "商品ID", example = "101")
    private Long productId;

    @Schema(description = "商品标题", example = "苹果")
    private String productName;

    @Schema(description = "商品副标题", example = "描述标题")
    private String productDesc;

    @Schema(description = "商品封面图",  example = "http://image.test.cn/images/dfdfdfdfgfgfg.png")
    private String productImage;

    @Schema(description = "轮播图", example = "['http://image.test.cn/images/dfdfdfdfgfgfg.png','http://image.test.cn/images/dfdfdfdfgfgfg.png']")
    private List<String> carousel;

    private String sliderList;

    @Schema(description = "商品价格", example = "16.2")
    private BigDecimal price;

    @Schema(description = "实际支付价格", example = "15.9")
    private BigDecimal payPrice;

    @Schema(description = "规格展示", example = "规格：1箱")
    private String sku;

    @Schema(description = "销量",  example = "100")
    private Integer saleTotal;

    @Schema(description = "浏览量", example = "10000")
    private Integer browseTotal;

    @Schema(description = "规格属性集合", example = "[{'propertyId':0,'propertyName':'默认','valueId':0,'valueName':'默认'}]")
    private String properties;

    private Integer productPrice;

    private Integer marketPrice;

    @Schema(description = "是否单规格", example = "true | false")
    private Boolean single;

    @Schema(description = "购物车ID", example = "1")
    private Long cartId;

    @Schema(description = "喜欢数", example = "1")
    private Integer likeCount;

    @Schema(description = "收藏数", example = "1")
    private Integer collectCount;

    @Schema(description = "是否标记喜欢", example = "1")
    private Boolean isLike;

    @Schema(description = "是否收藏", example = "1")
    private Boolean isCollect;

    @Schema(description = "库存")
    private Integer stock;
}
